package com.springboot.usercenter.service;

import com.springboot.usercenter.model.UserInfo;
import com.springboot.usercenter.model.dto.DeleteUserDTO;
import com.springboot.usercenter.model.dto.SearchUserListDTO;
import com.springboot.usercenter.model.dto.UserLoginDTO;
import com.springboot.usercenter.model.dto.UserRegisterDTO;
import jakarta.servlet.http.HttpServletRequest;
import org.apache.catalina.User;

import java.util.List;

/**
 * Created with IntelliJ IDEA.
 * Description :
 * User: jiume
 * Date: 2025-04-23
 * Time: 13:59
 */
public interface UserService {
    /**
     * 用户注册
     * @param userAccount 用户账号
     * @param userPassword 用户密码
     * @param checkPassword 确认密码
     * @return DTO对象内的id 返回注册Id ==>  -1代表注册失败 ， > 0代表注册成功
     */
    UserRegisterDTO userRegister(String userAccount, String userPassword, String checkPassword);


    /**
     * 用户登录
     * @param userAccount 用户账号
     * @param userPassword 用户密码
     * @return 登录成功返回用户脱敏后的信息
     */
    UserLoginDTO userLogin(String userAccount, String userPassword, HttpServletRequest request);

    /**
     * 查询用户信息
     * @param username 查询的用户名
     * @return 返回符合条件的用户信息列表
     */
    SearchUserListDTO searchUserList(String username, HttpServletRequest request);

    /**
     * 删除用户信息
     * @param id 删除用户的Id
     * @return 返回true，代表删除成功，返回false，代表删除失败
     */
    DeleteUserDTO deleteUser(Long id, HttpServletRequest request);
}
